16253
19110
Jag har just installerat Python 3.6.1 för MacOS X
När jag försöker köra konsolen (eller köra något med Python3) kastas det här felet:
AttributeError: modul 'enum' har inget attribut 'IntFlag'
$ /Library/Frameworks/Python.framework/Versions/3.6/bin/python3
Det gick inte att importera webbplatsmodulen
Spårning (senaste samtalet senast):
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", rad 544, i 
huvud ()
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", rad 530, i huvudsak
kända_stigar = addusersitepackages (kända_stigar)
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", rad 282, i addusersitepackages
user_site = getusersitepackages ()
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", rad 258, i getusersitepackages
user_base = getuserbase () # detta kommer också att ställa in USER_BASE
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", rad 248, i getuserbase
USER_BASE = get_config_var ('användarbas')
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py", rad 601, i get_config_var
returnera get_config_vars (). get (name)
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py", rad 580, i get_config_vars
importera _osx_support
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/_osx_support.py", rad 4, i 
importera re
Fil "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/re.py", rad 142, i 
klass RegexFlag (enum.IntFlag):
AttributeError: modul 'enum' har inget attribut 'IntFlag'
Klassen IntFlag finns inom enum.py. Så varför kastas AttributError? 
Det beror på att ditt enum inte är standardbibliotekets enum-modul. Du har förmodligen paketet enum34 installerat.
Ett sätt att kontrollera om detta är fallet är att inspektera fastigheten enum .__ fil__
importera enum
skriva ut (enum .__ fil__)
# standardbiblioteksplats bör vara ungefär som
# /usr/local/lib/python3.6/enum.py
Sedan python 3.6 är enum34-biblioteket inte längre kompatibelt med standardbiblioteket. Biblioteket är också onödigt, så du kan helt enkelt avinstallera det.
pip avinstallera -y enum34
Om du behöver koden för att köras på pythonversioner både <= 3.4 och> 3.4, kan du försöka ha enum-kompatibelt som ett krav. Den installerar endast enum34 för äldre versioner av python utan standardbibliotekets enum.
|
Inte säker på om du fortfarande har det här problemet. Jag hade en liknande fråga och jag kunde lösa det helt enkelt genom att avaktivera PYTHONPATH
$ unset PYTHONPATH
|
För mig inträffade detta fel efter installation av gcloud-komponent app-engine-python för att integreras i pycharm. Att avinstallera modulen hjälpte, även om pycharm nu inte laddas upp till app-engine.
|
Om någon kommer hit på grund av att få det här felet när du kör ett Google App-motor Python 3.7 standardmiljöprojekt i PyCharm är allt du behöver göra
Se till att konfigurationen som ska köras gäller Flask, inte Google App Engine-konfiguration.
Inaktivera sedan stöd för Google App Engine under Inställningar >> Språk och ramverk >> Google App Engine
Anledningen är enligt denna länk
Det övergripande målet är att din app ska vara helt bärbar och köras i vilken standard Python-miljö som helst. Du skriver en standard Python-app, inte en App Engine Python-app. Som en del av detta skift är du inte längre skyldig att använda proprietära App Engine API: er och tjänster för appens kärnfunktionalitet. För närvarande är App Engine API: er inte tillgängliga under Python 3.7-körning.
Jag antar att när vi skapar ett python 3.7-projekt i PyCharm som ett Google-appmotorprojekt försöker det fortfarande göra på samma sätt som för en python2.7-app
|
FRISKRIVNING: Snälla, @ juanpa.arrivillaga, om du ser detta svar, är du välkommen att skriva ditt eget så tar jag bort det här inlägget.
@ juanpa.arrivillaga hade nämnt ovan:
Finns det ett filnamn enum.py i din arbetskatalog, av någon slump?
Det här var problemet jag stötte på. Jag var inte medveten om enum-modulen på python vid den tiden och hade namngett min testfil enum.py.
Eftersom filnamnet är modulnamnet uppstod en konflikt. Mer information om moduler här: https://docs.python.org/2/tutorial/modules.html
|
Att inaktivera "Google App Engine Support" i pycharm-inställningar fixade problemet för mig.
|
Installera version 1.1.8 av enum34 fungerade för mig.
Jag kunde fixa detta genom att lägga till enum34 = "== 1.1.8" till pyproject.toml.
Tydligen hade enum34 en funktion i v1.1.8 som undvek detta fel, men
detta minskade i v1.1.9 +. Detta är bara en lösning. De
bättre lösning skulle vara att paket använder miljömarkörer så
du behöver inte installera enum34 alls om det inte behövs.
Källa: https://github.com/python-poetry/poetry/issues/1122
|
Håken Lids svar hjälpte till att lösa mitt problem (tack!), I mitt fall närvarande i Python3.7 som kör Flask i en Docker-behållare (FRÅN tiangolo / uwsgi-nginx-flask: python3.7-alpine3.7).
I mitt fall installerades enum34 av ett annat bibliotek (pip install smartsheet-python-sdk).
För de som kommer med ett liknande Docker-behållarproblem, här är min sista Dockerfile (borttagen till relevanta rader):
FRÅN tiangolo / uwsgi-nginx-kolv: python3.7-alpin3.7
...
KÖR pipinstallation -r krav.txt
KÖR pip-avinstallation -y enum34
...
|
Om du måste behålla PYTHONPATH för både python2 och python3 kan du skriva alias-uttalanden för att ställa in rätt PYTHONPATH i din bash_profile:
Hårdkoda dina PYTHONPATH2- och PYTHONPATH3-variabler i din ~ / .bash_profile och lägg till följande alias i slutet av den:
alias python = 'export PYTHONPATH = $ {PYTHONPATH2}; python'
alias python3 = 'exportera PYTHONPATH = $ {PYTHONPATH3}; python3'
Min python (refererar till python2) eftersom jag använder python2 oftare.
|
När jag fick det här problemet:
AttributeError: modul 'enum' har inget attribut 'IntFlag'
helt enkelt först kör jag kommandot:
avstängd PYTHONPATH
och kör sedan mitt önskade kommando och fick framgång i det.
|
Det gjorde jag med pipinstall  --ignore-installed enum34
När ditt önskade bibliotek är installerat, leta efter varningar under byggnaden.
Jag fick ett fel så här: Att använda äldre setup.py-installation för framtiden, eftersom paketet 'hjul' inte är installerat FEL: pyejabberd 0.2.11 har krav enum34 == 1.1.2, men du har enum34 1.1.10 vilket är oförenligt .
För att åtgärda problemet kör du nu kommandot: pip freeze | grep enum34. Detta ger dig versionen av den installerade enum34. Avinstallera det nu genom pip avinstallera enum34 och installera om den version som krävs som pipinstallation "enum34 == 1.1.20"
|
Om du har det här problemet när du kör tester i PyCharm, se till att den andra rutan är avmarkerad ikonfigurationer.
|
Jag har Python 2 och Python 3 installerat på min dator. Av någon konstig anledning har jag i sys.path of Python 3 också en väg till sitepackage-bibliotekskatalogen för Python2 när re-modulen anropas. Om jag kör Python 3 och importerar enum och skriver ut (enum .__ fil__) visar systemet inte denna Python 2-sökväg till platspaket. Så ett mycket grovt och smutsigt hack är att direkt modifiera modulen i vilken enum importeras (följ spårningsvägarna) och infoga följande kod precis innan du importerar enum:
importera sys
för i, p i enumerate (sys.path):
om "python27" i p.lower () eller "python2.7" i p.lower (): sys.path.pop (i)
importera enum
Det löste mitt problem.
|
Till och med jag hade det här problemet när jag körde python -m grpc_tools.protoc --version
Var tvungen att ställa in PYTHONPATH till platspaket och stänga av alla kommandotolken och det fungerade. Hoppas det hjälper för gRPC-användare.
|
Jag hade detta problem i ubuntu20.04 i jupyterlab i min virtuella env-kärna med python3.8 och tensorflow 2.2.0. Felmeddelande var
Spårning (senaste samtalet senast):
Fila "/usr/lib/python2.7/runpy.py", rad 174, i _run_module_as_main
"__main__", fname, loader, pkg_name)
Fil "/usr/lib/python2.7/runpy.py", rad 72, i _run_code
exec-kod i run_globals
Fil "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel_launcher.py", rad 15, i 
från ipykernel importera kernelapp som app
Fila "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/__init__.py", rad 2, i 
från .connect import *
Fila "/home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/connect.py", rad 13, i 
från IPython.core.profiledir importerar ProfileDir
Fil "/home/hu-mka/.local/lib/python2.7/site-packages/IPython/__init__.py", rad 48, i 
från .core.application importansökan
Fila "/home/hu-mka/.local/lib/python2.7/site-packages/IPython/core/application.py", rad 23, i 
från importprogrammet traitlets.config.application, catch_config_error
Fila "/home/hu-mka/.local/lib/python2.7/site-packages/traitlets/__init__.py", rad 1, i 
från .traitlets import *
Fil "/home/hu-mka/.local/lib/python2.7/site-packages/traitlets/traitlets.py", rad 49, i 
importera enum
ImportError: Ingen modul med namnet enum
problemet var att i symbolisk länk i / usr / bin / python pekade på python2. Lösning:
cd / usr / bin /
sudo ln -sf python3 python
Förhoppningsvis kommer Python 2-användningen att släppas helt snart.
|
Jag fick det här problemet när jag installerade transformatorbibliotek från HuggingFace. Det berodde på att paketet enum34 installerades i min miljö som gällde inbyggt enum i Python. Detta paket installerades troligen av något som gäller framåtkompatibilitet som inte längre behövs med Python 3.6+. Så lösningen är helt enkelt,
pip avinstallera -y enum34
|
Tyvärr hjälpte inget av förslagen mig, men efter mer googling av det här
pip installera enenum
löst det för mig
|
Om någon har det här problemet när du försöker köra Jupyter-kärnan från en virtualenv, lägg bara till rätt PYTHONPATH till kernel.json i din virtualenv-kärna (Python 3 i exempel):
{
"argv": [
"/usr/local/Cellar/python/3.6.5/bin/python3.6",
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "Python 3 (TensorFlow)",
"språk": "python",
"env": {
"PYTHONPATH": "/Users/dimitrijer/git/mlai/.venv/lib/python3.6:/Users/dimitrijer/git/mlai/.venv/lib/python3.6/lib-dynload:/usr/local/ Källare / python / 3.6.5 / Frameworks / Python.framework / Versioner / 3.6 / lib / python3.6: /Users/dimitrijer/git/mlai/.venv/lib/python3.6/site-packages "
}
}
|
Ditt svar
StackExchange.ifUsing ("editor", function () {
StackExchange.using ("externalEditor", funktion () {
StackExchange.using ("snippets", function () {
StackExchange.snippets.init ();
});
});
}, "kodutdrag");
StackExchange.ready (funktion () {
var channelOptions = {
taggar: "" .split (""),
id: "1"
};
initTagRenderer ("". split (""), "" .split (""), channelOptions);
StackExchange.using ("externalEditor", funktion () {
// Måste aktivera redaktören efter utdrag, om utdrag aktiverade
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using ("snippets", function () {
createEditor ();
});
}
annat {
createEditor ();
}
});
funktion createEditor () {
StackExchange.prepareEditor ({
useStacksEditor: falsk,
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: sant,
showLowRepImageUploadWarning: true,
reputToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Drivs av \ u003ca href = \" https: //imgur.com/ \ "\ u003e \ u003csvg class = \" svg-icon \ "width = \" 50 \ "height = \" 18 \ "viewBox = \ "0 0 50 18 \" fill = \ "none \" xmlns = \ "http: //www.w3.org/2000/svg \" \ u003e \ u003cpath d = \ "M46.1709 9.17788C46.1709 8.26454 46.2665 7.94324 47.1084 7.58816C47.4091 7.46349 47.7169 7.36433 48.0099 7.26993C48.9099 6.97997 49.672 6.73443 49.672 5.93063C49.672 5.22043 48.98324.61182 48.1414 4.61182C47.4335 4.61182 46.7256 4.91628 46.0943 5.50789C45.7307 4.9328 45.2525 4.66231 44.6595 4.66231C43.6264 4.66231 43.1481 5.28821 43.1481 6.59048V11.9512C43.1481 13.2535.6.6 / \ u003e \ u003cpath d = \ "M32.492 10.1419C32.492 12.6954 34.1182 14.0484 37.0451 14.0484C39.9723 14.0484 41.5985 12.6954 41.5985 10.1419V6.59049C41.5985 5.28821 41.1394 4.66232 40.1061 4.6623.666 .5948 10.8521 38.2696 11.5455 37.0451 11.5455C35.8209 11.5455 35.4954 10.8521 35.4954 9.60062V6.59049C35.4954 5.28821 35.0173 4.66232 34.0034 4.66232C32.9703 4.66232 32.492 5.28821 32.4194.649V \ "klippregel = \" jämnt \ "d = \" M25.6622 17.6335C27.8049 17.6335 29.3739 16.9402 30.2537 15.6379C30.8468 14.7755 30.9615 13.5579 30.9615 11.9512V6.59049C30.9615 5.28821 30.4833 4.66231.46 4.9497 8 28.1109 5.50789C27.499 4.86533 26.7335 4.56087 25.7005 4.56087C23.1369 4.56087 21.0134 6.57349 21.0134 9.27932C21.0134 11.9852 23.003 13.913 25.3754 13.913C26.5612 13.913 27.4607 13.4902 28.1109 126.16 12.6 12.983C28.1301 14.4373 27.2502 15.2321 25.777 15.2321C24.8349 15.2321 24.1352 14.9821 23.5661 14.7787C23.176 14.6393 22.8472 14.5218 22.5437 14.5218C21.7977 14.5218 21.2429 15.01288 21.74 15.223.2 7.09766 26.1024 7.09766C27.2119 7.09766 28.0918 7.94324 28.0918 9.27932C28.0918 10.6321 27.2311 11.5116 26.1024 11.5116C24.9737 11.5116 24.1317 10.6491 24.1317 9.27932Z \ "/ \ u003e \ u003cpath d = \ 25.216.216 13.8962C19.3298 13.8962 19.8079 13.2535 19.8079 11.9512V8.12928C19.8079 5.82936 18.4879 4.62866 16.4027 4.62866C15.1594 4.62866 14.279 4.98375 13.3609 5.88013C12.653 5.05154 11.6581 4.62866 10.3573 4.62866C9.34336 4.62866 8.57809 4.89931 7.9466 5.5079C7.58314 4.9328 7.10506 4.66232 6.51203 4.66232C5.47873 4.66232 5.00066 5.28821 5.00066 6.59049V11.9512C5.00066 13.25352.773 0232 7,58817 8,44431 6,91179 9,53458 6.91179C10.5104 6,91179 10,893 7,58817 10,893 8.94108V11.9512C10.893 13,2535 11,3711 13,8962 12,4044 13.8962C13.4375 13,8962 13,9157 13,2535 13,9157 11.9512V8.90741C13.9157 7,58817 14,3365 6,91179 15,4269 6.91179C16.4027 6,91179 16,8045 7,58817 16,8045 8,94108 V11.9512Z \ "/ \ u003e \ u003cpath d = \" M3.31675 6.59049C3.31675 5.28821 2.83866 4.66232 1.82471 4.66232C0.791758 4.66232 0.313354 5.28821 0.313354 6.59049V11.9512C0.313354 13.2535.896.82.162.81 3.31675 11.9512V6.59049Z \ "/ \ u003e \ u003cpath d = \" M1.87209 0.400291C0.843612 0.400291 0 1.1159 0 1.98861C0 2.87869 0.822846 3.57676 1.87209 3.57676C2.90056 3.57676 3.7234 2.87869 3.7234 1.98861C3.7234 1.1159 2.90056 0.400291 1.87209 0.400291Z \ "fill = \" # 1BB76E \ "/ \ u003e \ u003c / svg \ u003e \ u003c / a \ u003e",
contentPolicyHtml: "Användarbidrag licensierade under \ u003ca href = \" https: //stackoverflow.com/help/licensing \ "\ u003ecc by-sa \ u003c / a \ u003e \ u003ca href = \" https://stackoverflow.com / legal / content-policy \ "\ u003e (content policy) \ u003c / a \ u003e",
allowUrls: sant
},
onDemand: sant,
discardSelector: ".discard-answer"
, direktShowMarkdownHelp: true, enableTables: true, enableSnippets: true
});
}
});
Tack för att du har bidragit med ett svar till Stack Overflow!
Var noga med att svara på frågan. Ge detaljer och dela din forskning!
Men undvik ...
Be om hjälp, förtydligande eller svara på andra svar.
Att göra uttalanden baserade på åsikt; säkerhetskopiera dem med referenser eller personlig erfarenhet.
För att lära dig mer, se våra tips för att skriva bra svar.
Utkast sparat
Utkast kasseras
Registrera dig eller logga in
StackExchange.ready (funktion () {
StackExchange.helpers.onClickDraftSave ('# login-link');
});
Registrera dig med Google
Registrera dig med Facebook
Registrera dig med e-post och lösenord
Skicka in
Lägg upp som gäst
namn
E-post
Obligatoriskt men aldrig visat
StackExchange.ready (
funktion () {
StackExchange.openid.initPostLogin ('. New-post-login', 'https% 3a% 2f% 2fstackoverflow.com% 2fquestions% 2f43124775% 2fwhy-python-3-6-1-throws-attributeerror-module-enum-has- no-attribute-intflag% 23new-answer ',' question_page ');
}
);
Lägg upp som gäst
namn
E-post
Obligatoriskt men aldrig visat
Lägg upp ditt svar
Kassera
Genom att klicka på “Lägg upp ditt svar” godkänner du våra användarvillkor, sekretesspolicy och cookiepolicy
Inte svaret du letar efter? Bläddra bland andra frågor taggade python python-3.x enums python-3.6 attributerror eller ställ din egen fråga.